1. Technical Field
This invention pertains to the field of uninstalling software applications. More particularly, the invention pertains to the field of uninstalling software applications which are resident on a plurality of computer terminals within a network.
2. Background Art
As software applications are installed onto a computer, the installation process will generally alter the computer's registry as well as install new files both outside and within the application's home directory. As a result, the removal of installed software applications from a computer is often much more complicated than merely deleting the software's home directory. In order to minimize the difficulty of removing software applications from a computer, uninstallation software packages have been commercially developed to identify all of the files installed by the software installation and subsequently remove these files. There are generally two types of commercially available uninstallation software packages.
A first type of uninstallation software package is a pre-packaged uninstalling program that is sold in conjunction with a software application. A pre-packaged uninstalling program is designed to specifically remove only the corresponding software application with which it is packaged. It operates by specifically removing those files installed when the corresponding software application was loaded onto the computer. The files installed and removed are dictated by user-defined selections which are made during the uninstallation process.
The second type of uninstalling software is a general uninstalling program which must be resident on a computer at the time the software application to be uninstalled was installed. This type of uninstalling software records the install-time activities of a software application as it is subsequently installed on the specific computer terminal and generates an uninstall file designed to remove those files specifically installed when the software application was loaded onto the computer terminal.
When a software application is installed on a computer, a user often customizes the installation by selecting a version of the software as well as defining run-time options that a software application will perform during its execution. A pre-packaged uninstall program normally comes packaged with a corresponding software application and contains multiple uninstalling options. The pre-packaged uninstall program requires a user to locally identify the version of the installed software application prior to the actual removal of the software application. Additionally, the pre-packaged uninstall program normally requires a user to locally input any customization options of the software application which were chosen during the installation process. From these inputs, the pre-packaged uninstall program identifies the necessary uninstalling options required to remove the particular software application from the computer. As a result, prior to the actual removal of a software application, this first type of uninstallation software package requires a user to select the correct uninstalling options corresponding to the customization options of the software application which were chosen during the installation process. Because this first type of uninstallation software package requires a user to interface with the computer upon which the software application is located, this type of uninstallation software package cannot efficiently remove software on a large number of computer terminals in a network.
A general uninstall program must be placed on the computer prior to installation of the software applications that will be later removed. Examples of a general uninstall program include the Norton Uninstaller and the McAffee Uninstaller. A general uninstall program records the install-time activities of software applications as they are installed on the computer. From this record of install-time activities, the general uninstall program is able to monitor the files that are downloaded and changes in the computer registry during the installation of the software application. Thereafter, when a user wishes to uninstall the software application, a general uninstall program removes the files created as well as the changes in the computer registry that were recorded during the software installation. However, because this type of uninstallation software package must be present on a computer prior to the software installation, it cannot efficiently remove software on a large number of computer terminals on a network wherein the software was previously installed without all computers on the network having this type of general uninstall file. Additionally, this type of uninstallation software package must be locally triggered on each individual computer terminal in order to remove a specific software application resident on that computer terminal.
As shown above, the prior art does not efficiently remove software applications resident on a large number of computer terminals in a network. If a user wants to use either type of uninstallation software package, the user must interface with each computer terminal. As a result, the removal of software applications on a large number of computer terminals requires a great amount of time for the user to interface with each computer terminal. What is needed is a method for allowing a user to remotely remove software applications on a large number of computer terminals in a network without having to interface with each individual computer terminal in the network.